package pl.wroc.uni.ii.evolution.engine.prototype;

import java.io.Serializable;

/**
 * Interface that every ObjectiveFunction must implement.
 * getFitness method should do basic validation of parameter
 * to check if it can handle that kind of individual.
 * 
 * Important: Better individuals have higher objective values!
 * 
 * @author Marcin Brodziak, Tomasz Kozakiewicz
 */
public interface EvObjectiveFunction<T extends EvIndividual> extends Serializable{
  public double evaluate(T individual);
}
